package org.jeecg.api.dto.resp.position;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.jeecg.common.aspect.annotation.Dict;
import org.jeecg.modules.recruit.company.entity.MmCompanyMain;
import org.jeecg.modules.recruit.position.entity.MmCompanyLabel;
import org.jeecg.modules.recruit.position.entity.MmCompanyPicture;
import org.jeecg.modules.recruit.position.entity.MmCompanyPositionItem;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.jeecgframework.poi.excel.annotation.ExcelCollection;
import org.springframework.format.annotation.DateTimeFormat;

import java.util.Date;
import java.util.List;

/**
 * @Description: 职位信息
 * @Author: jeecg-boot
 * @Date:   2020-08-24
 * @Version: V1.0
 */
@Data
@ApiModel(value="mm_company_positionPage对象", description="职位信息")
public class MmCompanyPositionPageVO {

	/**id*/
	@ApiModelProperty(value = "id")
	private String id;
	/**所属公司*/
	@Excel(name = "所属公司", width = 15, dictTable = "mm_company_main", dicText = "cp_name", dicCode = "id")
    @Dict(dictTable = "mm_company_main", dicText = "cp_name", dicCode = "id")
	@ApiModelProperty(value = "所属公司")
	private String companyId;
	/**职位编码*/
	@Excel(name = "职位编码", width = 15)
	@ApiModelProperty(value = "职位编码")
	private String psCode;
	/**职位名称*/
	@Excel(name = "职位名称", width = 15)
	@ApiModelProperty(value = "职位名称")
	private String psName;
	/**最低薪资*/
	@Excel(name = "最低薪资", width = 15)
	@ApiModelProperty(value = "最低薪资")
	private Double salaryMin;
	/**最高薪资*/
	@Excel(name = "最高薪资", width = 15)
	@ApiModelProperty(value = "最高薪资")
	private Double salaryMax;
	/**状态*/
	@Excel(name = "状态", width = 15, dicCode = "use_status")
    @Dict(dicCode = "use_status")
	@ApiModelProperty(value = "状态")
	private Integer psStatus;
	/**备注*/
	@Excel(name = "备注", width = 15)
	@ApiModelProperty(value = "备注")
	private String remark;
	/**创建人*/
	@ApiModelProperty(value = "创建人")
	private String createBy;
	/**创建日期*/
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
	@ApiModelProperty(value = "创建日期")
	private Date createTime;
	/**更新人*/
	@ApiModelProperty(value = "更新人")
	private String updateBy;
	/**更新日期*/
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
	@ApiModelProperty(value = "更新日期")
	private Date updateTime;

	/**状态*/
	@Excel(name = "报名人数", width = 15)
	@ApiModelProperty(value = "报名人数")
	private Integer signNum;

	@Excel(name = "是否收藏", width = 15)
	@ApiModelProperty(value = "是否收藏")
	private boolean collection;

	@Excel(name = "是否报名", width = 15)
	@ApiModelProperty(value = "是否报名")
	private boolean sign;

	@ExcelCollection(name="职位详情")
	@ApiModelProperty(value = "职位详情")
	private List<MmCompanyPositionItem> mmCompanyPositionItemList;
	@ExcelCollection(name="图片介绍")
	@ApiModelProperty(value = "图片介绍")
	private List<MmCompanyPicture> mmCompanyPictureList;
	@ExcelCollection(name="标签信息")
	@ApiModelProperty(value = "标签信息")
	private List<MmCompanyLabel> mmCompanyLabelList;
	@ExcelCollection(name="企业信息")
	@ApiModelProperty(value = "企业信息")
	private MmCompanyMain mmCompanyMain;
}
